'use strict';
const crypto = require('crypto');


// this 就是 ctx 对象，在其中可以调用 ctx 上的其他方法，或访问属性
module.exports = {
  // 封装响应数据格式
  responseData(data = {}, msg = 'success', code, status = 200) {
    this.status = status;
    this.body = {
      status: code,
      data,
      msg,
    };
  },
  NOW() {
    return Math.floor(new Date().getTime() / 1000); // 返回当前时间戳（秒）
  },
  // 加密函数
  encrypt(text, key) {
    const cipher = crypto.createCipher('aes-256-cbc', key);
    let encrypted = cipher.update(text, 'utf8', 'hex');
    encrypted += cipher.final('hex');
    return encrypted;
  },
  // 解密函数
 decrypt(encryptedText, key) {
  const decipher = crypto.createDecipher('aes-256-cbc', key);
  let decrypted = decipher.update(encryptedText, 'hex', 'utf8');
  decrypted += decipher.final('utf8');
  return decrypted;
}

  
} 